#line 1 "skinMainView.tmpl"
#include "content.h" 
#line 2 "skinMainView.tmpl"
#include "constants.h" 
#line 3 "skinMainView.tmpl"
namespace my_skin {
	#line 5 "skinMainView.tmpl"
	struct master :public cppcms::base_view
	#line 5 "skinMainView.tmpl"
	{
	#line 5 "skinMainView.tmpl"
		cppcms::base_content &content;
	#line 5 "skinMainView.tmpl"
		master(std::ostream &_s,cppcms::base_content &_content): cppcms::base_view(_s),content(_content)
	#line 5 "skinMainView.tmpl"
		{
	#line 5 "skinMainView.tmpl"
		}
		#line 6 "skinMainView.tmpl"
		virtual void menu() {
			#line 9 "skinMainView.tmpl"
			out()<<"\n"
				"        <div id=\"menu\">\n"
				"            <ul>\n"
				"                <li><a href=\"";
			#line 9 "skinMainView.tmpl"
			out()<<ROOT 
			#line 10 "skinMainView.tmpl"
			out()<<"/overview\">overview</a></li>\n"
				"                <li><a href=\"";
			#line 10 "skinMainView.tmpl"
			out()<<ROOT 
			#line 11 "skinMainView.tmpl"
			out()<<"/clients\">clients</a></li>\n"
				"                <li><a href=\"";
			#line 11 "skinMainView.tmpl"
			out()<<ROOT 
			#line 14 "skinMainView.tmpl"
			out()<<"/services\">services</a></li>\n"
				"            </ul>\n"
				"        </div>\n"
				"        ";
		#line 14 "skinMainView.tmpl"
		} // end of template menu
		#line 15 "skinMainView.tmpl"
		virtual void head() {
			#line 18 "skinMainView.tmpl"
			out()<<"\n"
				"        <head>\n"
				"            <title>11z-zpr-netspy</title>\n"
				"            ";
			#line 18 "skinMainView.tmpl"
			css();
			#line 19 "skinMainView.tmpl"
			out()<<"\n"
				"            ";
			#line 19 "skinMainView.tmpl"
			javascript();
			#line 21 "skinMainView.tmpl"
			out()<<"\n"
				"        </head>\n"
				"        ";
		#line 21 "skinMainView.tmpl"
		} // end of template head
		#line 22 "skinMainView.tmpl"
		virtual void javascript() {
			#line 23 "skinMainView.tmpl"
			out()<<"\n"
				"            <script type=\"text/javascript\" src=\"";
			#line 23 "skinMainView.tmpl"
			out()<<ROOT; 
			#line 24 "skinMainView.tmpl"
			out()<<"/../script/default.js\"></script>\n"
				"        ";
		#line 24 "skinMainView.tmpl"
		} // end of template javascript
		#line 25 "skinMainView.tmpl"
		virtual void css() {
			#line 26 "skinMainView.tmpl"
			out()<<"\n"
				"            <link rel=\"stylesheet\" href=\"";
			#line 26 "skinMainView.tmpl"
			out()<<ROOT; 
			#line 27 "skinMainView.tmpl"
			out()<<"/../style/default.css\" type=\"text/css\" media=\"all\" />\n"
				"        ";
		#line 27 "skinMainView.tmpl"
		} // end of template css
		#line 28 "skinMainView.tmpl"
		virtual void link_comp(std::string &label,std::string &id) {
			#line 29 "skinMainView.tmpl"
			out()<<"\n"
				"            <a href=\"";
			#line 29 "skinMainView.tmpl"
			out()<<ROOT 
			#line 29 "skinMainView.tmpl"
			out()<<"/comp/";
			#line 29 "skinMainView.tmpl"
			out()<<id;
			#line 29 "skinMainView.tmpl"
			out()<<"\">";
			#line 29 "skinMainView.tmpl"
			out()<<label;
			#line 30 "skinMainView.tmpl"
			out()<<"</a>\n"
				"        ";
		#line 30 "skinMainView.tmpl"
		} // end of template link_comp
	#line 31 "skinMainView.tmpl"
	}; // end of class master
	#line 33 "skinMainView.tmpl"
	struct services :public master
	#line 33 "skinMainView.tmpl"
	{
	#line 33 "skinMainView.tmpl"
		content::services &content;
	#line 33 "skinMainView.tmpl"
		services(std::ostream &_s,content::services &_content): master(_s,_content),content(_content)
	#line 33 "skinMainView.tmpl"
		{
	#line 33 "skinMainView.tmpl"
		}
		#line 34 "skinMainView.tmpl"
		virtual void render() {
			#line 36 "skinMainView.tmpl"
			out()<<"  \n"
				"    <html>\n"
				"      ";
			#line 36 "skinMainView.tmpl"
			master::head();
			#line 38 "skinMainView.tmpl"
			out()<<"\n"
				"      <body>\n"
				"        ";
			#line 38 "skinMainView.tmpl"
			master::menu();
			#line 46 "skinMainView.tmpl"
			out()<<"\n"
				"        <table>\n"
				"            <thead>\n"
				"                <tr>\n"
				"                    <td>service description</td>\n"
				"                </tr>\n"
				"            </thead>\n"
				"            <tbody>\n"
				"            ";
			#line 46 "skinMainView.tmpl"
			for(int i=0; i<content.size; ++i){ 
			#line 48 "skinMainView.tmpl"
			out()<<"\n"
				"            <tr>\n"
				"                <td><a href=\"";
			#line 48 "skinMainView.tmpl"
			out()<<ROOT 
			#line 48 "skinMainView.tmpl"
			out()<<"/service/";
			#line 48 "skinMainView.tmpl"
			out()<<content.id.at(i) ;
			#line 48 "skinMainView.tmpl"
			out()<<"\">";
			#line 48 "skinMainView.tmpl"
			out()<<content.description.at(i) ;
			#line 50 "skinMainView.tmpl"
			out()<<"</a></td>\n"
				"            </tr>\n"
				"            ";
			#line 50 "skinMainView.tmpl"
			} 
			#line 55 "skinMainView.tmpl"
			out()<<"\n"
				"            </tbody>\n"
				"        </table>\n"
				"      </body>  \n"
				"    <html>   \n"
				"    ";
		#line 55 "skinMainView.tmpl"
		} // end of template render
	#line 56 "skinMainView.tmpl"
	}; // end of class services
	#line 58 "skinMainView.tmpl"
	struct overview :public master
	#line 58 "skinMainView.tmpl"
	{
	#line 58 "skinMainView.tmpl"
		content::overview &content;
	#line 58 "skinMainView.tmpl"
		overview(std::ostream &_s,content::overview &_content): master(_s,_content),content(_content)
	#line 58 "skinMainView.tmpl"
		{
	#line 58 "skinMainView.tmpl"
		}
		#line 59 "skinMainView.tmpl"
		virtual void render() {
			#line 61 "skinMainView.tmpl"
			out()<<"  \n"
				"    <html>  \n"
				"      ";
			#line 61 "skinMainView.tmpl"
			master::head();
			#line 63 "skinMainView.tmpl"
			out()<<"\n"
				"      <body>\n"
				"        ";
			#line 63 "skinMainView.tmpl"
			master::menu();
			#line 77 "skinMainView.tmpl"
			out()<<"\n"
				"        <table>\n"
				"            <thead>\n"
				"                <tr>\n"
				"                    <td>ip</td>\n"
				"                    <td>port</td>\n"
				"                    <td>client remarks</td>\n"
				"                    <td>service</td>\n"
				"                    <td>timestamp</td>\n"
				"                    <td>status</td>\n"
				"                    <td></td>\n"
				"                </tr>\n"
				"            </thead>\n"
				"            <tbody>\n"
				"            ";
			#line 77 "skinMainView.tmpl"
			for(int i=0; i<content.size; ++i){ 
			#line 78 "skinMainView.tmpl"
			out()<<"\n"
				"            <tr class=\"";
			#line 78 "skinMainView.tmpl"
			out()<<content.status.at(i); 
			#line 79 "skinMainView.tmpl"
			out()<<"\">\n"
				"                <td><a href=\"";
			#line 79 "skinMainView.tmpl"
			out()<<ROOT 
			#line 79 "skinMainView.tmpl"
			out()<<"/comp/";
			#line 79 "skinMainView.tmpl"
			out()<<content.comp_id.at(i);
			#line 79 "skinMainView.tmpl"
			out()<<"\">";
			#line 79 "skinMainView.tmpl"
			out()<<content.ip.at(i) ;
			#line 80 "skinMainView.tmpl"
			out()<<"</a></td> \n"
				"                <td>";
			#line 80 "skinMainView.tmpl"
			out()<<content.port.at(i) ;
			#line 81 "skinMainView.tmpl"
			out()<<"</td>\n"
				"                <td>";
			#line 81 "skinMainView.tmpl"
			out()<<content.remarks.at(i) ;
			#line 82 "skinMainView.tmpl"
			out()<<"</td>\n"
				"                <td><a href=\"";
			#line 82 "skinMainView.tmpl"
			out()<<ROOT 
			#line 82 "skinMainView.tmpl"
			out()<<"/service/";
			#line 82 "skinMainView.tmpl"
			out()<<content.service_id.at(i);
			#line 82 "skinMainView.tmpl"
			out()<<"\">";
			#line 82 "skinMainView.tmpl"
			out()<<content.service.at(i);
			#line 83 "skinMainView.tmpl"
			out()<<"</a></td>\n"
				"                <td>";
			#line 83 "skinMainView.tmpl"
			out()<<content.timestamp.at(i) ;
			#line 84 "skinMainView.tmpl"
			out()<<"</td>\n"
				"                <td>";
			#line 84 "skinMainView.tmpl"
			out()<<content.status.at(i) ;
			#line 85 "skinMainView.tmpl"
			out()<<"</td>\n"
				"                <td><a href=\"";
			#line 85 "skinMainView.tmpl"
			out()<<ROOT 
			#line 85 "skinMainView.tmpl"
			out()<<"/service/";
			#line 85 "skinMainView.tmpl"
			out()<<content.service_id.at(i);
			#line 85 "skinMainView.tmpl"
			out()<<"/comp/";
			#line 85 "skinMainView.tmpl"
			out()<<content.comp_id.at(i);
			#line 87 "skinMainView.tmpl"
			out()<<"\">history</a></td>\n"
				"            </tr>\n"
				"            ";
			#line 87 "skinMainView.tmpl"
			} 
			#line 92 "skinMainView.tmpl"
			out()<<"\n"
				"            </tbody>\n"
				"        </table>\n"
				"      </body>  \n"
				"    <html>  \n"
				"    ";
		#line 92 "skinMainView.tmpl"
		} // end of template render
	#line 93 "skinMainView.tmpl"
	}; // end of class overview
	#line 96 "skinMainView.tmpl"
	struct clients :public master
	#line 96 "skinMainView.tmpl"
	{
	#line 96 "skinMainView.tmpl"
		content::clients &content;
	#line 96 "skinMainView.tmpl"
		clients(std::ostream &_s,content::clients &_content): master(_s,_content),content(_content)
	#line 96 "skinMainView.tmpl"
		{
	#line 96 "skinMainView.tmpl"
		}
		#line 97 "skinMainView.tmpl"
		virtual void render() {
			#line 99 "skinMainView.tmpl"
			out()<<"  \n"
				"    <html>\n"
				"      ";
			#line 99 "skinMainView.tmpl"
			master::head();
			#line 101 "skinMainView.tmpl"
			out()<<"\n"
				"      <body>\n"
				"        ";
			#line 101 "skinMainView.tmpl"
			master::menu();
			#line 111 "skinMainView.tmpl"
			out()<<"\n"
				"        <table>\n"
				"            <thead>\n"
				"                <tr>\n"
				"                    <td>ip</td>\n"
				"                    <td>port</td>\n"
				"                    <td>client remarks</td>\n"
				"                </tr>\n"
				"            </thead>\n"
				"            <tbody>\n"
				"            ";
			#line 111 "skinMainView.tmpl"
			for(int i=0; i<content.size; ++i){ 
			#line 113 "skinMainView.tmpl"
			out()<<"\n"
				"            <tr>\n"
				"                <td><a href=\"";
			#line 113 "skinMainView.tmpl"
			out()<<ROOT 
			#line 113 "skinMainView.tmpl"
			out()<<"/comp/";
			#line 113 "skinMainView.tmpl"
			out()<<content.id.at(i); 
			#line 113 "skinMainView.tmpl"
			out()<<"\">";
			#line 113 "skinMainView.tmpl"
			out()<<content.ip.at(i) ;
			#line 114 "skinMainView.tmpl"
			out()<<"</a></td>\n"
				"                <td>";
			#line 114 "skinMainView.tmpl"
			out()<<content.port.at(i) ;
			#line 115 "skinMainView.tmpl"
			out()<<"</td>\n"
				"                <td>";
			#line 115 "skinMainView.tmpl"
			out()<<content.remarks.at(i) ;
			#line 117 "skinMainView.tmpl"
			out()<<"</td>\n"
				"            </tr>\n"
				"            ";
			#line 117 "skinMainView.tmpl"
			} 
			#line 122 "skinMainView.tmpl"
			out()<<"\n"
				"            </tbody>\n"
				"        </table>\n"
				"      </body>  \n"
				"    <html>  \n"
				"    ";
		#line 122 "skinMainView.tmpl"
		} // end of template render
	#line 123 "skinMainView.tmpl"
	}; // end of class clients
	#line 125 "skinMainView.tmpl"
	struct history :public master
	#line 125 "skinMainView.tmpl"
	{
	#line 125 "skinMainView.tmpl"
		content::history &content;
	#line 125 "skinMainView.tmpl"
		history(std::ostream &_s,content::history &_content): master(_s,_content),content(_content)
	#line 125 "skinMainView.tmpl"
		{
	#line 125 "skinMainView.tmpl"
		}
		#line 126 "skinMainView.tmpl"
		virtual void render() {
			#line 128 "skinMainView.tmpl"
			out()<<"  \n"
				"    <html>\n"
				"      ";
			#line 128 "skinMainView.tmpl"
			master::head();
			#line 130 "skinMainView.tmpl"
			out()<<"\n"
				"      <body>\n"
				"        ";
			#line 130 "skinMainView.tmpl"
			master::menu();
			#line 133 "skinMainView.tmpl"
			out()<<"\n"
				"        <table>\n"
				"            <caption>\n"
				"                ";
			#line 133 "skinMainView.tmpl"
			out()<<cppcms::filters::escape(content.ip);
			#line 133 "skinMainView.tmpl"
			out()<<" ";
			#line 133 "skinMainView.tmpl"
			out()<<cppcms::filters::escape(content.port);
			#line 133 "skinMainView.tmpl"
			out()<<" (";
			#line 133 "skinMainView.tmpl"
			out()<<cppcms::filters::escape(content.remarks);
			#line 133 "skinMainView.tmpl"
			out()<<") - ";
			#line 133 "skinMainView.tmpl"
			out()<<cppcms::filters::escape(content.service);
			#line 142 "skinMainView.tmpl"
			out()<<"\n"
				"            </caption>\n"
				"            <thead>\n"
				"                <tr>\n"
				"                    <td>timestamp</td>\n"
				"                    <td>status</td>\n"
				"                </tr>\n"
				"            </thead>\n"
				"            <tbody>\n"
				"            ";
			#line 142 "skinMainView.tmpl"
			for(int i=0; i<content.size; ++i){ 
			#line 143 "skinMainView.tmpl"
			out()<<"\n"
				"            <tr class=\"";
			#line 143 "skinMainView.tmpl"
			out()<<content.status.at(i); 
			#line 144 "skinMainView.tmpl"
			out()<<"\">\n"
				"                <td>";
			#line 144 "skinMainView.tmpl"
			out()<<content.timestamp.at(i) ;
			#line 145 "skinMainView.tmpl"
			out()<<"</td>\n"
				"                <td>";
			#line 145 "skinMainView.tmpl"
			out()<<content.status.at(i) ;
			#line 147 "skinMainView.tmpl"
			out()<<"</td>\n"
				"            </tr>\n"
				"            ";
			#line 147 "skinMainView.tmpl"
			} 
			#line 152 "skinMainView.tmpl"
			out()<<"\n"
				"            </tbody>\n"
				"        </table>\n"
				"      </body>  \n"
				"    <html>  \n"
				"    ";
		#line 152 "skinMainView.tmpl"
		} // end of template render
	#line 153 "skinMainView.tmpl"
	}; // end of class history
#line 156 "skinMainView.tmpl"
} // end of namespace my_skin
#line 156 "skinMainView.tmpl"
namespace {
#line 156 "skinMainView.tmpl"
 cppcms::views::generator my_generator; 
#line 156 "skinMainView.tmpl"
 struct loader { 
#line 156 "skinMainView.tmpl"
  loader() { 
#line 156 "skinMainView.tmpl"
   my_generator.name("my_skin");
#line 156 "skinMainView.tmpl"
   my_generator.add_view<my_skin::master,cppcms::base_content>("master",true);
#line 156 "skinMainView.tmpl"
   my_generator.add_view<my_skin::services,content::services>("services",true);
#line 156 "skinMainView.tmpl"
   my_generator.add_view<my_skin::overview,content::overview>("overview",true);
#line 156 "skinMainView.tmpl"
   my_generator.add_view<my_skin::clients,content::clients>("clients",true);
#line 156 "skinMainView.tmpl"
   my_generator.add_view<my_skin::history,content::history>("history",true);
#line 156 "skinMainView.tmpl"
    cppcms::views::pool::instance().add(my_generator);
#line 156 "skinMainView.tmpl"
 }
#line 156 "skinMainView.tmpl"
 ~loader() {  cppcms::views::pool::instance().remove(my_generator); }
#line 156 "skinMainView.tmpl"
} a_loader;
#line 156 "skinMainView.tmpl"
} // anon 
